Prolog Parsing

TODO: write